Спринт 1/18 → Тема 13/13: Как искать решение → Урок 2/4
Поиск решения
— Ура, у меня получилось! Я же Альберт Эйнштейн и Кэтрин Джонсон одновременно!
— Всё пропало, я ни на что не гожусь, и зачем было ввязываться в это дело...
Эти два состояния будут регулярно сменять друг друга во время обучения, и если первый вариант имеет под собой серьёзные основания, то второй — лишь следствие усталости или непонимания, как подступиться к проблеме.
Любая проблема — это просто задача, которая требует решения. А практические шаги для решения такой задачи можно свести к трём основным этапам:
- Сформулировать, в чём же состоит проблема («ничего не получается» звучит слишком расплывчато).
- Поискать решение самостоятельно.
- Если решение не нашлось — обратиться за помощью к наставникам и однокурсникам.
В чём проблема?
Студенты Практикума чаще всего сталкиваются с проблемами в трёх категориях:
- Проблемы в теории: незнакомые термины, сложный материал в теоретической части курса, материал вебинара похож на китайскую грамоту.
- Проблемы в практике: непонятно, что и как нужно сделать в задании, программа выдаёт ошибки; действия по инструкции не приводят к ожидаемому результату.
- Организационные проблемы: демотивация, форс-мажоры, непонимание учебного процесса.
Определите, к какой категории относится проблема, сформулируйте её и определите вопросы, ответы на которые нужно найти.
Если вам непонятен конкретный раздел в теории, разбейте проблему на мелкие фрагменты. Возможно, у вас не один вопрос, а несколько; а может и наоборот: вы разобрались во всём, кроме одного небольшого вопроса.
Если сложности возникли в практической части — отмотайте плёнку назад, восстановите цепочку событий: в какой момент и после каких действий всё пошло не так. Сформулируйте вопрос: в чём конкретно нужна помощь.
Точно так же можно поступить с организационными вопросами: если словами описать проблему — можно будет сформулировать конкретный вопрос, с решением которого требуется помощь в первую очередь..
Самостоятельный поиск ответа
Не спешите задавать вопросы сокурсникам или наставнику, вначале исследуйте вопрос самостоятельно.
Возможно, ответ есть в уроках
Когда вопрос сформулирован — ответ может найтись в пройденных уроках, в теории или в практических заданиях.
- Перечитайте задание и теорию, и формулировки станут понятнее. В теории есть ответы и на организационные вопросы — во вводных уроках в начале курса.
Возможно, ваша проблема не уникальна
Есть шанс, что с проблемой, которую вы пытаетесь решить, кто-то из ваших однокурсников уже столкнулся — а может, и решил её.
- Проверьте каналы в мессенджере, поищите по нескольким вариантам запросов: возможно, эту проблему уже обсуждали и нашли решение.
Поиск в интернете
Даже если никто из ваших однокурсников не сталкивался с проблемой, подобной вашей — будьте уверены: в мировой практике этот вопрос уже поднимался, и на него уже найден ответ, если не в русском сегменте интернета — то уж точно в английском. Вперёд, в глобальную сеть!
Алгоритм поиска в интернете
Этот алгоритм опирается на отличие: как люди задают вопрос собеседнику и как — поисковику. В первом случае формулировку сначала обдумывают, а потом озвучивают, чтобы не тратить время и нервы друг друга. С поисковиком же работают, пока не будут удовлетворены ответом или просто не надоест. Поэтому можно, долго не думая, ввести вопрос в поисковую строку, а потом его улучшить.
Правильный запрос — половина успеха
Подумайте, что и в какой терминологии может быть написано на той странице, которая хранит ответ на ваш вопрос. Ищите слова с этой воображаемой страницы.
Скорее всего, после первого-второго запроса поиск не даст нужного ответа. Но обзор поисковой выдачи поможет понять, как искать дальше.
- Измените слова в запросе на синонимы
- Воспользуйтесь синтаксисом расширенного поиска (инструкции для Яндекса; для Google);
- Уточните запрос, исходя из найденных результатов.
- Уберите из запроса лишние слова.
- Разбейте вопрос на части, чтобы уточнить детали.
- Перейдите на англоязычные запросы — в этом случае вероятность найти ответ возрастёт многократно.
- Ищите в нескольких поисковых системах.
Поиск в документации
У каждого языка программирования, у каждой серьёзной библиотеки или модуля есть официальное описание, созданное авторами, — документация. Обычно документация есть в открытом доступе.
Если вы столкнулись с ошибкой в коде и не понимаете, в чём дело, — читайте документацию.
Найти документацию несложно: достаточно, например, сделать поисковый запрос по словам Python документация. Такой запрос приведёт к сайту, где размещён перевод официальной документации на русский язык. При чтении документации обращайте внимание на версию языка или библиотеки, чтобы не погрузиться в изучение устаревшего материала.
Если результаты по простому запросу вас не удовлетворят, уточните его — например, Python функция len() документация. В ответ поисковик выдаст ссылку на официальную документацию языка.
Документация не всегда бывает удобна, красива и понятна, но даже если вы не увидите в ней прямого ответа на свой вопрос — вы найдёте там подсказки, что и как искать дальше.
Удачной охоты!
Поиск может и не дать ответа на ваш вопрос, но при любом исходе вы получите дополнительную информацию по интересующей вас теме. В таком случае — вперёд в комьюнити, задавать вопросы!